var path = require('path')

var VueLoaderPlugin =require('vue-loader/lib/plugin')
var htmlWebpackPlugin = require('html-webpack-plugin')
// 暴露模块
module.exports=({
    entry:path.join(__dirname,'./src/main.js'),
    output:{
        path:path.join(__dirname,'./dist'),
        filename:'bundle.js'
    },
    plugins:[
        new htmlWebpackPlugin ({
            template:path.join(__dirname,'./src/index.html'),
            filename:'index.html'
        }),
        new VueLoaderPlugin()
    ],
    devServer:{
        host: "192.168.43.25",
        hot: true,
        progress: true,
        // proxy: 'http://127.0.0.1:8000'
    },
    module:{//这个节点，用于配置所有第三方模块 加载器
        rules:[//所有第三方模块的匹配规则
            {
                 test:/\.css$/,use:['style-loader','css-loader']//匹配处理 .css 文件的第三方loader规则
            },
            {
                test:/\.less$/,use:['style-loader','css-loader','less-loader']//匹配处理 .css 文件的第三方loader规则
            },
            {
                test:/\.scss$/,use:['style-loader','css-loader','sass-loader']//匹配处理 .css 文件的第三方loader规则
            },
            {
                test:/\.(jpg|png|gif|bmp|jpeg)$/,use:'url-loader?limit=7631&name=[hsah:8]-[name].[ext]'
            },
            {test:/\.(ttf|eot|svg|woff|woff2)$/,use:'url-loader'},//处理字体文件的 loader
            {
                test:/\.js$/,use:'babel-loader',exclude:/(node_modules|bower_components)/
            },
            { test: /\.vue$/,use: 'vue-loader' },//处理 .vue 文件
        ]

    },
    resolve: {
        alias: {// 修改 vue 被导入时的包
          'vue$': 'vue/dist/vue.js' 
        }
      }
})